Two bounded problems, one visual language inherited from Supporting Surfaces Master v1: restore scan hierarchy on the Settings landing, and stop the bridge card from stacking 编 over 辑 at narrow Chinese width. Directions A3 and C2 stand; every frame, note and rule now uses the repository's own copy and the real BridgeInfo model. Link state and runner state are two independent facts here, as they are in the product.
Chinese titles are the existing ones: Token 用量, 定时任务, 通用, Agent 与会话默认项, 连接与协作, 安全与审批, 帮助与关于. Invented subtitles — trusted contacts, passcode, diagnostics — are gone; where a category's existing scope string is not in hand, the subtitle is simply absent rather than guessed.
BridgeInfo carries one display identity: name. The invented friendly-label-plus-id pair is removed, deviceId is never printed, and the AccessTier badge — a security-relevant existing field dropped by mistake — is back on every collapsed card.
Link state is pendingTicket, then online, then offline, in the product's own words. runner.running only chooses which runner actions exist; Running, Stopped and Pending no longer masquerade as link labels. With runner == null there are no runner controls at all, Edit included.
The noApproval tag reads “trust modes allowed / 可设信任模式” and means configuration is permitted, not that approvals are skipped. Workdirs print as basenames. Revoke is a visible action on every card, never inside the disclosure. bridgeError and bridgeMergeLost print above the cards with no Retry and no log action.
The flat list fails for one reason: seven equal rows with seven static scope subtitles give the eye no place to land, so the two things people came for — usage and schedule — read as the first two of seven categories. Live: tap the tabs to switch, tap any row to see it register.
A2 buys separation with a second container type. A3 buys the same separation with contrast the surface already owns — paper versus low container, subtitle versus no subtitle, one group label. It survives 200% text and Chinese without re-flowing, because nothing sits side by side.
General prints real resolved local state — appearance and text size. Agent and Connections print scope copy taken from the settings they already contain. Security & approvals and Support & about print none until their existing scope strings are pulled from the repository; a subtitle is never authored on this board. Utilities print none by rule.
Large title, the existing Connected to <computer> summary derived from paired.displayName with no link health or counts, the two utilities, the five categories in order, and the pending-review badge beside Connections above zero.
Today name, link state, access tier, the trust tag and the runner actions share one row. At 320 pt minus a 20 pt gutter there are 280 pt of content, and the last flex child is squeezed until 编辑 breaks between its two characters. A button that wraps its own label is the failure; a button row that wraps as whole buttons is the fix.
Action row: flex; wrap; gap 8. Each control flex 1 1 auto; min-width 96; min-height 48; padding 0 16; white-space nowrap. No min-width 0 and no word-break inside a control, so the row breaks before a label can.
Zone 1: name, once, monospace — no second identity line and never deviceId. Zone 2: link state beside its mark, the AccessTier badge, the optional trust tag, the live-session count — one wrapping run, no controls. Zone 3: actions below a hairline.
48 pt on every runner action, Revoke and every sheet button; 44 pt floor on the disclosure control and the card. At 200% controls grow to 60 pt and the row wraps further. Targets never shrink to make a row fit.
96 pt holds two-character Chinese labels and the longest English equivalent (Restart) at both text sizes. Only fixed grammar localises; name, workdir basenames, exit codes and error text are data and print as supplied.
Three items are placeholders on this board and must be pulled verbatim before the master: the empty and unavailable strings, the localized bridgeMergeLost warning, and the AccessTier enum values (shown here as full / limited). Scope subtitles for Security & approvals and Support & about are deliberately absent for the same reason.
This board is the direction only. The master prototype — one live device component driving Settings, the five categories and Bridges with theme, locale, text size and bridge fixtures as runtime state — comes next, on approval of A3 and C2.